#pragma once

#include "Vector.h"
//-
#include <SFML/Window.hpp>
#include <SFML/Graphics.hpp>
//-
#include <gl/GL.h>
#include <gl/GLU.h>
//-
#include "DebugConsole.h"
//-
#include "BaseActor.h"

enum GAMESTATES
{
	GAMESTATE_NOT_INITIALIZED,
	GAMESTATE_IN_MENU,
	GAMESTATE_IN_GAME
};

class CEngine
{
public:
	CEngine();
	~CEngine();

	// Main Functions
	void OnInit();
	void OnLoop();
	void OnEvent(sf::Event Event);
	void OnRender();
	void OnShutdown();
	// -

	// Rendering
	void RenderView(sf::View& View);

	// -

private:
	sf::Clock	m_globalClock;
	CBaseActor	m_localPlayer;
	sf::View	m_currentView;
};